window.onload = function () {

    //给选择文件按钮绑定单击事件
    $("#upload_btn").click(press_File);

    //上传文件绑定单击事件
    $("#uploadClick_btn").click(upload);

    //删除按钮被单击
    /*$(".delete_btn").click(deleteFile);*/

    //当upload_file被改变
    $("#upload_file").change(showlabel);

    //赋值序号
    setSerialNumber();

    //setremember
    setUser();

}

function setUser() {
    var username = localStorage.getItem("username", username);
    var password = localStorage.getItem("password", password);
    if (username != "" && password != "") {
        $("#username_text").val(username);
        $("#password_text").val(password);
        $("#remember").prop("checked",true);
    }
}

//选择需要上传的文件
function press_File() {
    var inputFile = $("#upload_file");
    inputFile.click();
}

//上传
function upload() {
    var formdata = new FormData();
    //jQuery在这里拿不到files
    var filelist = document.getElementById("upload_file").files;
    //alert(filelist.length);
   for (var index = 0; index < filelist.length; index++){
       formdata.append("files",filelist[index]);
   }
   formdata.append("type",$("#select").val());
    var fileValue = $("#upload_file").val();
    //判断file是否为null
    if(fileValue != "" && fileValue != null){
        $.ajax(
            {
                type:"post",
                url:"/upload/data",
                data:formdata,
                processData:false,  // jQuery不要去处理发送的数据
                contentType:false,  // jQuery不要去设置Content-Type请求头
                success:uploadCallback  //回调函数
            }
        );
    }else{
        alert("请选择上传文件!");
    }
}

//上传数据回调函数
function uploadCallback (Success) {
    if (Success == "Success") {
        alert("上传成功");
        window.location='/goDisk?pagestart=1';
    }else if (Success == "Failed") {
        alert("上传失败!")
    }else{
        alert("此文件已经存在," + Success);
        //可能上传多个文件,即使存在,也需要跳转页面
        window.location='/goDisk?pagestart=1';
    }
}

//赋值序号
function setSerialNumber() {
    //拿到行
    var countTD = $(".count");
    var count = 1;
    for (var i = 0; i < countTD.length; ++i){
        //将DOM转换为jquery对象,通过text把count赋值
        $(countTD[i]).text(count);
        count++;
    }
}

//删除file
function deleteFile() {
    $.ajax(
        {
            type:"get",
            url:"",
            data:formdata,
            success:uploadCallback  //回调函数
        }
    )
}

function showlabel() {

    //fileValue
    var inputFile = $("#upload_file");
    var file = inputFile[0].files;
    /*
    alert(file.length);
    alert(file[0].name);
    */
    /**
     * 如果个数大于1 那么展示文件个数,否则展示文件名
     */
    if (file.length == 1){
        $("label#showFile").text(file[0].name);
    }else if(file.length > 1){
        $("label#showFile").text(file.length + "个文件");
    }else{
        $("label#showFile").text("请选择上传文件");
    }
}

//全选被按下
function CheckAll(){
    var ifChecked = $("#checkAll").prop("checked");
    //拿到所有的checkbox除去第一个
    var allcheck = $(":checkbox:gt(0)");
    //赋值
    allcheck.prop("checked",ifChecked);

    //拿到选中的复选框个数
    var pitchoncount = $(":checkbox:gt(0):checked");
    var judge = pitchoncount.length > 0;
    //拿到批量删除按钮赋值disabled
    $("#batchdelete").prop("disabled",!judge);
}

//批量删除按钮被按下
function deleteMore(){
    //传递参数
    var formData = new FormData();

    var iftrue = confirm("是否需要删除选中文件所有数据?,删除后不可恢复!");
    if (!iftrue) {
        return;
    }
    var pitchOn = $(":checkbox:gt(0):checked");
    for (var i = 0; i < pitchOn.length; ++i){
        //拿到id
        var id = $(pitchOn[i]).parent().parent().children("td").eq(0).text();
        formData.append("id",id);
    }

    $.ajax(
        {
            type:"post",
            url:"/disk/deletemore",
            data:formData,
            processData:false,  // jQuery不要去处理发送的数据
            contentType:false,  // jQuery不要去设置Content-Type请求头
            success:deleteMoreCallback
        }
    );

}

function deleteMoreCallback(message) {
    if (message == "Success"){
        alert("删除成功!")
        window.location = "/disk/batch";
    }else if(message == "Failed"){
        alert("有数据未删除成功,请管理员核实后手动在数据库进行删除!");
    }else{
        alert("有数据未删除成功,但已进行回滚操作! 错误数据: " + message);
    }
}

//复选框单击事件
function checkclick() {

    //拿到选中的复选框个数
    var pitchoncount = $(":checkbox:gt(0):checked");
    var judge = pitchoncount.length > 0;
    //拿到批量删除按钮赋值disabled
    $("#batchdelete").prop("disabled",!judge);

    //如果选中的个数等于全部个数
    var whetherCheckAll = pitchoncount.length == $(":checkbox:gt(0)").length;
    $("#checkAll").prop("checked",whetherCheckAll);
}

















